Public Sub AnalizaUSB(ByVal vUnidad As String, ByVal vLV As ListView, ByVal ElmAutorrum As Boolean, ByVal SubCarpetas As Boolean)
        Application.DoEvents()
        'System.Threading.Thread.Sleep("100")
        NoAM.an.Text = " ANALIZANDO USB"
        If ElmAutorrum Then 'Firma del Autorrun 
            NoAM.LInfo3.Text = "Buscando autorun.inf. . ."
            NoAM.LInfo3.Refresh()

            FPrincipal.LInfo3.Text = "Buscando autorun.inf. . ."
            FPrincipal.LInfo3.Refresh()

            If My.Computer.FileSystem.FileExists(vUnidad & "autorun.inf") Then
                FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                FPrincipal.LUContArch.Refresh()
                If (File.GetAttributes(vUnidad & "autorun.inf") And FileAttributes.System) = FileAttributes.System Then
                    FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
                    FPrincipal.LUContInfe.Refresh()
                    Try
                        File.SetAttributes(vUnidad & "autorun.inf", FileAttributes.Normal)
                        File.Delete(vUnidad & "autorun.inf")
                        imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                        imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap) 'CAMBIAR LUEGO!!!!!!!!!!!!!!
                        Dim item As ListViewItem = vLV.Items.Add(vUnidad & "autorun.inf", imageListLVUSB.Images.Count - 1)
                        Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "autorun.inf", imageListres.Images.Count - 1)
                        item1.SubItems.Add("Virus reconocido por firma Generica (Autorun)")
                        item1.SubItems.Add("Se elimino autorun.inf")
                        item.SubItems.Add("Virus reconocido por firma Generica (Autorun)")
                        item.SubItems.Add("Se elimino autorun.inf")
                        'item.ForeColor = Verde
                    Catch ex As Exception
                        Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", vUnidad & "autorun.inf", "USB Virus(Autorun)")
                        FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                        FPrincipal.LUContCua.Refresh()
                        imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                        imageListLVUSB.Images.Add(My.Resources._stop)
                        Dim item As ListViewItem = vLV.Items.Add(vUnidad & "autorun.inf", imageListLVUSB.Images.Count - 1)
                        Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "autorun.inf", imageListres.Images.Count - 1)
                        item1.SubItems.Add("Error: Eliminar Virus(Autorrun.inf)")
                        item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                        item1.ForeColor = Rojo
                        item.SubItems.Add("Error: Eliminar Virus(Autorrun.inf)")
                        item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                        item.ForeColor = Rojo
                    End Try
                End If
                'Dim srLector As StreamReader = New StreamReader(vUnidad & "autorun.inf")
                'Dim contenido As String = srLector.ReadToEnd
                'srLector.Close()
            End If
        End If
        If My.Computer.FileSystem.DirectoryExists(vUnidad + "RECYCLER") Then 'Firma del Recycler
            Application.DoEvents()
            FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
            FPrincipal.LUContArch.Refresh()
            FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
            FPrincipal.LUContInfe.Refresh()
            'System.Threading.Thread.Sleep("100")
            Try
                For Each foundFile As String In My.Computer.FileSystem.GetFiles(vUnidad & "RECYCLER", FileIO.SearchOption.SearchAllSubDirectories)
                    FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                    FPrincipal.LUContArch.Refresh()
                    File.SetAttributes(foundFile, FileAttributes.Normal)
                Next
                For Each foundDirectory As String In My.Computer.FileSystem.GetDirectories(vUnidad & "RECYCLER", FileIO.SearchOption.SearchAllSubDirectories)
                    FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                    FPrincipal.LUContArch.Refresh()
                    File.SetAttributes(foundDirectory, FileAttributes.Normal)
                Next
                File.SetAttributes(vUnidad + "RECYCLER", IO.FileAttributes.Normal)
                My.Computer.FileSystem.DeleteDirectory(vUnidad + "RECYCLER", FileIO.DeleteDirectoryOption.DeleteAllContents)
                imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap) 'CAMBIAR LUEGO!!!!!!!!!!!!!!
                Dim item As ListViewItem = vLV.Items.Add(vUnidad & "RECYCLER", imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "RECYCLER", imageListres.Images.Count - 1)
                item1.SubItems.Add("Virus reconocido por firma Generica (RECYCLER)")
                item1.SubItems.Add("Se elimino RECYCLER")
                item.SubItems.Add("Virus reconocido por firma Generica (RECYCLER)")
                item.SubItems.Add("Se elimino RECYCLER")
            Catch ex As Exception
                Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", vUnidad & "RECYCLER", "USB Virus(RECYCLER)")
                FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                FPrincipal.LUContCua.Refresh()
                imageListLVUSB.Images.Add(My.Resources._stop)
                imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                Dim item As ListViewItem = vLV.Items.Add(vUnidad & "RECYCLER", imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "RECYCLER", imageListres.Images.Count - 1)
                item1.SubItems.Add("Error: Eliminar Virus(RECYCLER)")
                item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item1.ForeColor = Rojo
                item.SubItems.Add("Error: Eliminar Virus(RECYCLER)")
                item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item.ForeColor = Rojo
            End Try
        End If
        'System.Threading.Thread.Sleep("100")
        If My.Computer.FileSystem.DirectoryExists(vUnidad & "MSOCache") AndAlso (File.GetAttributes(vUnidad & "MSOCache") And FileAttributes.System) = FileAttributes.System Then
            Application.DoEvents()
            FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
            FPrincipal.LUContArch.Refresh()
            FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
            FPrincipal.LUContInfe.Refresh()
            Try
                For Each foundFile As String In My.Computer.FileSystem.GetFiles(vUnidad & "MSOCache", FileIO.SearchOption.SearchAllSubDirectories)
                    FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                    FPrincipal.LUContArch.Refresh()
                    File.SetAttributes(foundFile, FileAttributes.Normal)
                Next
                For Each foundDirectory As String In My.Computer.FileSystem.GetDirectories(vUnidad & "MSOCache", _
                 FileIO.SearchOption.SearchAllSubDirectories)
                    FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                    FPrincipal.LUContArch.Refresh()
                    File.SetAttributes(foundDirectory, FileAttributes.Normal)
                Next
                File.SetAttributes(vUnidad & "MSOCache", FileAttributes.Normal)
                My.Computer.FileSystem.DeleteDirectory(vUnidad & "MSOCache", FileIO.DeleteDirectoryOption.DeleteAllContents)
                imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap)
                imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                Dim item As ListViewItem = vLV.Items.Add(vUnidad & "MSOCache", imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "MSOCache", imageListres.Images.Count - 1)
                item1.SubItems.Add("Virus reconocido por firma Generica (MSOCache)")
                item1.SubItems.Add("Se elimino MSOCache")
                item.SubItems.Add("Virus reconocido por firma Generica (MSOCache)")
                item.SubItems.Add("Se elimino MSOCache")
            Catch ex As Exception
                Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", vUnidad & "MSOCache", "USB Virus(MSOCache)")
                FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                FPrincipal.LUContCua.Refresh()
                imageListLVUSB.Images.Add(My.Resources._stop)
                imageListres.Images.Add(My.Resources._stop)
                Dim item As ListViewItem = vLV.Items.Add(vUnidad & "MSOCache", imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "MSOCache", imageListres.Images.Count - 1)
                item1.SubItems.Add("Error: Eliminar Virus(MSOCache)")
                item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item1.ForeColor = Rojo
                item.SubItems.Add("Error: Eliminar Virus(MSOCache)")
                item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item.ForeColor = Rojo
            End Try
        End If
        'Firma generica 4
        If My.Computer.FileSystem.DirectoryExists(vUnidad + "Recycled") Then
            Application.DoEvents()
            FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
            FPrincipal.LUContArch.Refresh()
            FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
            FPrincipal.LUContInfe.Refresh()
            Try
                For Each foundFile As String In My.Computer.FileSystem.GetFiles(vUnidad & "Recycled", FileIO.SearchOption.SearchAllSubDirectories)
                    FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                    FPrincipal.LUContArch.Refresh()
                    IO.File.SetAttributes(foundFile, FileAttributes.Normal)
                Next
                For Each foundDirectory As String In My.Computer.FileSystem.GetDirectories(vUnidad + "Recycled", FileIO.SearchOption.SearchAllSubDirectories)
                    FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                    FPrincipal.LUContArch.Refresh()
                    IO.File.SetAttributes(foundDirectory, IO.FileAttributes.Normal)
                Next
                IO.File.SetAttributes(vUnidad + "Recycled", IO.FileAttributes.Normal)
                My.Computer.FileSystem.DeleteDirectory(vUnidad + "Recycled", FileIO.DeleteDirectoryOption.DeleteAllContents)
                imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap)
                imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                Dim item As ListViewItem = vLV.Items.Add(vUnidad & "Recycled", imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "Recycled", imageListres.Images.Count - 1)
                item1.SubItems.Add("Virus reconocido por firma Generica (Recycled)")
                item1.SubItems.Add("Se elimino Recycled")
                item.SubItems.Add("Virus reconocido por firma Generica (Recycled)")
                item.SubItems.Add("Se elimino Recycled")

            Catch ex As Exception
                Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", vUnidad & "Recycled", "USB Virus(Recycled)")
                FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                FPrincipal.LUContCua.Refresh()
                imageListLVUSB.Images.Add(My.Resources._stop)
                imageListres.Images.Add(My.Resources._stop)
                Dim item As ListViewItem = vLV.Items.Add(vUnidad & "Recycled", imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(vUnidad & "Recycled", imageListres.Images.Count - 1)
                item1.SubItems.Add("Error: Eliminar Virus(Recycled)")
                item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item1.ForeColor = Rojo
                item.SubItems.Add("Error: Eliminar Virus(Recycled)")
                item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item.ForeColor = Rojo
            End Try
        End If
        'Escaneo completo
        'Firma generica 5
        Dim diUSB As New DirectoryInfo(vUnidad.Trim) 'el Trim kita los espacios en blanco
        USBHeuri(diUSB, SubCarpetas, vLV)
        Dim lista1 As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
        'Buscar archivos que cantengan ese texto. . y los pone en la lista
        lista1 = My.Computer.FileSystem.FindInFiles(vUnidad, "X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*", True, FileIO.SearchOption.SearchTopLevelOnly, {"*.exe", "*.com", "*.bat", "*.cmd"})
        Application.DoEvents()
        For Each virus As String In lista1
            FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
            FPrincipal.LUContArch.Refresh()
            FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
            FPrincipal.LUContInfe.Refresh()
            Try
                IO.File.SetAttributes(virus, IO.FileAttributes.Normal)
                My.Computer.FileSystem.DeleteFile(virus)
                imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap)
                imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                Dim item As ListViewItem = vLV.Items.Add(virus, imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(virus, imageListres.Images.Count - 1)
                item1.SubItems.Add("Virus reconocido por firma Eicar (Test File Not A Virus)")
                item1.SubItems.Add("Se elimino " & virus)
                item.SubItems.Add("Virus reconocido por firma Eicar (Test File Not A Virus)")
                item.SubItems.Add("Se elimino " & virus)
            Catch ex As Exception
                Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", virus, "USB Virus(Test File Not A Virus)")
                FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                FPrincipal.LUContCua.Refresh()
                imageListLVUSB.Images.Add(My.Resources._stop)
                imageListres.Images.Add(My.Resources._stop)
                Dim item As ListViewItem = vLV.Items.Add(virus, imageListLVUSB.Images.Count - 1)
                Dim item1 As ListViewItem = NoAM.res.Items.Add(virus, imageListres.Images.Count - 1)
                item1.SubItems.Add("Error: Eliminar Virus(Test File Not A Virus)")
                item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item1.ForeColor = Rojo
                item.SubItems.Add("Error: Eliminar Virus(Test File Not A Virus)")
                item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                item.ForeColor = Rojo
            End Try
        Next
        'Firma 6
        Dim lista2 As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
        lista2 = My.Computer.FileSystem.FindInFiles(vUnidad, "SOU HACKER COM ORGULHO SEU TROXA", True, FileIO.SearchOption.SearchTopLevelOnly, {"*.bat"})

        For Each virus As String In lista2
            Dim infoReader As System.IO.FileInfo
            infoReader = My.Computer.FileSystem.GetFileInfo(virus)

            If infoReader.Length = 124 Then
                Application.DoEvents()
                FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                FPrincipal.LUContArch.Refresh()
                FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
                FPrincipal.LUContInfe.Refresh()
                Try
                    IO.File.SetAttributes(virus, IO.FileAttributes.Normal)
                    My.Computer.FileSystem.DeleteFile(virus)
                    imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap)
                    imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                    Dim item As ListViewItem = vLV.Items.Add(virus, imageListLVUSB.Images.Count - 1)
                    Dim item1 As ListViewItem = NoAM.res.Items.Add(virus, imageListres.Images.Count - 1)
                    item1.SubItems.Add("Virus reconocido por firma Trojan.BAT.Deltree.v")
                    item1.SubItems.Add("Se elimino Trojan.BAT.Deltree.v")
                    item.SubItems.Add("Virus reconocido por firma Trojan.BAT.Deltree.v")
                    item.SubItems.Add("Se elimino Trojan.BAT.Deltree.v")
                Catch ex As Exception
                    Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", virus, "USB Virus(Trojan.BAT.Deltree.v)")
                    FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                    FPrincipal.LUContCua.Refresh()
                    imageListLVUSB.Images.Add(My.Resources._stop)
                    imageListres.Images.Add(My.Resources._stop)
                    Dim item As ListViewItem = vLV.Items.Add(virus, imageListLVUSB.Images.Count - 1)
                    Dim item1 As ListViewItem = NoAM.res.Items.Add(virus, imageListres.Images.Count - 1)
                    item1.SubItems.Add("Error: Eliminar Virus(Trojan.BAT.Deltree.v)")
                    item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                    item1.ForeColor = Rojo
                    item.SubItems.Add("Error: Eliminar Virus(Trojan.BAT.Deltree.v)")
                    item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                    item.ForeColor = Rojo
                End Try
            End If
        Next
        Dim lista3 As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
        lista3 = My.Computer.FileSystem.FindInFiles(vUnidad, "taskkill /F /IM explorer.exe /T", True, FileIO.SearchOption.SearchTopLevelOnly, {"*.bat"})

        For Each virus As String In lista3
            Dim infoReader As System.IO.FileInfo
            infoReader = My.Computer.FileSystem.GetFileInfo(virus)
            If infoReader.Length = 70 Then
                FPrincipal.LUContArch.Text = Val(FPrincipal.LUContArch.Text) + 1
                FPrincipal.LUContArch.Refresh()
                FPrincipal.LUContInfe.Text = Val(FPrincipal.LUContInfe.Text) + 1
                FPrincipal.LUContInfe.Refresh()
                Application.DoEvents()
                Try
                    IO.File.SetAttributes(virus, IO.FileAttributes.Normal)
                    My.Computer.FileSystem.DeleteFile(virus)
                    imageListLVUSB.Images.Add(My.Resources.Ok.ToBitmap)
                    imageListres.Images.Add(My.Resources.Ok.ToBitmap)
                    Dim item As ListViewItem = vLV.Items.Add(virus, imageListLVUSB.Images.Count - 1)
                    Dim item1 As ListViewItem = NoAM.res.Items.Add(virus, imageListres.Images.Count - 1)
                    item1.SubItems.Add("Virus reconocido por firma Trojan.BAT.KillApp.a")
                    item1.SubItems.Add("Se elimino Trojan.BAT.KillApp.a")
                    item.SubItems.Add("Virus reconocido por firma Trojan.BAT.KillApp.a")
                    item.SubItems.Add("Se elimino Trojan.BAT.KillApp.a")
                Catch ex As Exception
                    Ftn.mINI.IniWrite(DirCuarentena, "Cuarentena", virus, "USB Virus(Trojan.BAT.KillApp.a)")
                    FPrincipal.LUContCua.Text = Val(FPrincipal.LUContCua.Text) + 1
                    FPrincipal.LUContCua.Refresh()
                    imageListLVUSB.Images.Add(My.Resources._stop)
                    imageListres.Images.Add(My.Resources._stop)
                    Dim item As ListViewItem = vLV.Items.Add(virus, imageListLVUSB.Images.Count - 1)
                    Dim item1 As ListViewItem = NoAM.res.Items.Add(virus, imageListres.Images.Count - 1)
                    item1.SubItems.Add("Error: Eliminar Virus(Trojan.BAT.KillApp.a)")
                    item1.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                    item1.ForeColor = Rojo
                    item.SubItems.Add("Error: Eliminar Virus(Trojan.BAT.KillApp.a)")
                    item.SubItems.Add("Enviado a cuarentena por " & ex.Message)
                    item.ForeColor = Rojo
                End Try
            End If
        Next
        If Val(FPrincipal.LUContCua.Text) > 0 Then
            alerta_virus.Show()
            alerta_virus.Label1.Text = ("Termino el analisis del USB " & vUnidad & "Se encontraron " & FPrincipal.LUContCua.Text & " problemas enviados a Cuarentena" & vbNewLine & "Se encontraron " & FPrincipal.LUContInfe.Text & " Archivos infectados")
        Else
            If Val(FPrincipal.LUContInfe.Text) > 0 Then
                alerta_virus.Show()
                alerta_virus.Label1.Text = ("Termino el analisis del USB " & vUnidad & "Se encontraron " & FPrincipal.LUContInfe.Text & " Archivos infectados YA CORREGIDOS")
            Else
                NoAM.Show()
                NoAM.Label1.Text = ("Termino el analisis del USB " & vUnidad & "No se detectaron amenazas. . . . ")
            End If

        End If
    End Sub
